static DEFINE_MUTEX(cpuhp_state_mutex); //定义CPU热插拔状态锁
static struct cpuhp_step cpuhp_hp_states[]; //定义CPU热插拔状态锁
static DEFINE_PER_CPU(struct cpuhp_cpu_state, cpuhp_state) = {
	.fail = CPUHP_INVALID, //初始化每个CPU热插拔状态为
};

static DEVICE_ATTR_RW(fail);

static struct attribute *cpuhp_cpu_attrs[] = { //cpu热插拔状态
	&dev_attr_state.attr,
	&dev_attr_target.attr,
	&dev_attr_fail.attr, //设备失败属性
	NULL
};

static struct attribute *cpuhp_cpu_root_attrs[] = {
	&dev_attr_states.attr,
	NULL
};
static struct lockdep_map cpuhp_state_up_map =
	STATIC_LOCKDEP_MAP_INIT("cpuhp_state-up", &cpuhp_state_up_map);
static struct lockdep_map cpuhp_state_down_map =
	STATIC_LOCKDEP_MAP_INIT("cpuhp_state-down", &cpuhp_state_down_map);